gridpack::powerflow::PFFactoryModule Class Reference

#include <pf_factory_module.hpp>

Inheritance diagram for gridpack::powerflow::PFFactoryModule:
Inheritance graph
[legend]
Collaboration diagram for gridpack::powerflow::PFFactoryModule:
Collaboration graph
[legend]

List of all members.

Classes

struct  Violation

Public Member Functions

 PFFactoryModule (NetworkPtr network)
 ~PFFactoryModule ()
void setYBus (void)
void setSBus (void)
void updatePg (int busID, std::string genID, double value)
void updateQg (int busID, std::string genID, double value)
void setPQ (void)
bool checkLoneBus (std::ofstream *stream=NULL)
void clearLoneBus ()
void setVoltageLimits (double Vmin, double Vmax)
bool checkVoltageViolations ()
bool checkVoltageViolations (int area)
bool checkQlimViolations ()
bool checkQlimViolations (int area)
void clearQlimViolations ()
void ignoreVoltageViolations ()
void clearVoltageViolations ()
bool checkLineOverloadViolations ()
bool checkLineOverloadViolations (int area)
bool checkLineOverloadViolations (std::vector< int > &bus1, std::vector< int > &bus2, std::vector< std::string > &tags, std::vector< bool > &violations)
void ignoreLineOverloadViolations ()
void clearLineOverloadViolations ()
void resetVoltages ()
void scaleGeneratorRealPower (double scale, int area, int zone)
void scaleLoadPower (double scale, int area, int zone)
double getTotalLoadRealPower (int area, int zone)
void getGeneratorMargins (int area, int zone, double *total, double *pmin, double *pmax)
void resetPower ()
void setRTPRParams (int src_area, int src_zone, int load_area, int load_zone, double gen_scale, double load_scale)
std::vector< ViolationgetViolations ()
void clearViolations ()
void useRateB (bool flag)

Constructor & Destructor Documentation

gridpack::powerflow::PFFactoryModule::PFFactoryModule ( NetworkPtr  network  ) 

Basic constructor

Parameters:
network,: network associated with factory
gridpack::powerflow::PFFactoryModule::~PFFactoryModule (  ) 

Basic destructor


Member Function Documentation

bool gridpack::powerflow::PFFactoryModule::checkLineOverloadViolations ( std::vector< int > &  bus1,
std::vector< int > &  bus2,
std::vector< std::string > &  tags,
std::vector< bool > &  violations 
)
bool gridpack::powerflow::PFFactoryModule::checkLineOverloadViolations ( int  area  ) 
bool gridpack::powerflow::PFFactoryModule::checkLineOverloadViolations (  ) 

Check to see if there are any line overload violations in the network. The last call checks for overloads on specific lines.

Parameters:
area only check for voltage violations in this area
bus1 original index of "from" bus for branch
bus2 original index of "to" bus for branch
tags line IDs for individual lines
violations true if violation detected on branch, false otherwise
Returns:
true if no violations found
bool gridpack::powerflow::PFFactoryModule::checkLoneBus ( std::ofstream *  stream = NULL  ) 

Check for lone buses in the system. Do this by looking for buses that have no branches attached to them or for whom all the branches attached to the bus have all transmission elements with status false (the element is off). Set status of bus to isolated so that it does not contribute to powerflow matrix

Parameters:
stream optional stream pointer that can be used to print out IDs of isolated buses
Returns:
false if there is an isolated bus in the network
bool gridpack::powerflow::PFFactoryModule::checkQlimViolations ( int  area  ) 
bool gridpack::powerflow::PFFactoryModule::checkQlimViolations (  ) 

Check to see if there are any Q limit violations in the network

Parameters:
area only check for Q limit violations in this area
Returns:
true if no violations found
bool gridpack::powerflow::PFFactoryModule::checkVoltageViolations ( int  area  ) 
bool gridpack::powerflow::PFFactoryModule::checkVoltageViolations (  ) 

Check to see if there are any voltage violations in the network

Parameters:
area only check for voltage violations in this area
Returns:
true if no violations found
void gridpack::powerflow::PFFactoryModule::clearLineOverloadViolations (  ) 

Clear "ignore" parameter on all lines

void gridpack::powerflow::PFFactoryModule::clearLoneBus (  ) 

Set lone buses back to their original status.

void gridpack::powerflow::PFFactoryModule::clearQlimViolations (  ) 

Clear changes that were made for Q limit violations and reset system to its original state

void gridpack::powerflow::PFFactoryModule::clearViolations (  ) 

Clear violation vector

void gridpack::powerflow::PFFactoryModule::clearVoltageViolations (  ) 

Clear "ignore" parameter on all buses

void gridpack::powerflow::PFFactoryModule::getGeneratorMargins ( int  area,
int  zone,
double *  total,
double *  pmin,
double *  pmax 
)

Return the current real power generation and the maximum and minimum total power generation for all generators in the zone. If zone is less than 1 then return values for all generators in the area

Parameters:
area index of area
zone index of zone
total total real power generation
pmin minimum allowable real power generation
pmax maximum available real power generation
double gridpack::powerflow::PFFactoryModule::getTotalLoadRealPower ( int  area,
int  zone 
)

Return the total real power load for all loads in the zone. If zone less than 1, then return the total load for the area

Parameters:
area index of area
zone index of zone
Returns:
total load
std::vector<Violation> gridpack::powerflow::PFFactoryModule::getViolations (  ) 

Return vector describing all violations

Returns:
violation vector
void gridpack::powerflow::PFFactoryModule::ignoreLineOverloadViolations (  ) 

Set "ignore" parameter on all lines with violations so that subsequent checks are not counted as violations

void gridpack::powerflow::PFFactoryModule::ignoreVoltageViolations (  ) 

Set "ignore" parameter on all buses with violations so that subsequent checks are not counted as violations

void gridpack::powerflow::PFFactoryModule::resetPower (  ) 

Reset power of loads and generators to original values

void gridpack::powerflow::PFFactoryModule::resetVoltages (  ) 

Reinitialize voltages

void gridpack::powerflow::PFFactoryModule::scaleGeneratorRealPower ( double  scale,
int  area,
int  zone 
)

Scale generator real power. If zone less than 1 then scale all generators in the area

Parameters:
scale factor to scale real power generation
area index of area for scaling generation
zone index of zone for scaling generation
void gridpack::powerflow::PFFactoryModule::scaleLoadPower ( double  scale,
int  area,
int  zone 
)

Scale load real power. If zone less than 1 then scale all loads in the area

Parameters:
scale factor to scale load real power
area index of area for scaling load
zone index of zone for scaling load
Returns:
false if there is not enough capacity to change generation by requested amount
void gridpack::powerflow::PFFactoryModule::setPQ ( void   ) 

Create the PQ

void gridpack::powerflow::PFFactoryModule::setRTPRParams ( int  src_area,
int  src_zone,
int  load_area,
int  load_zone,
double  gen_scale,
double  load_scale 
)

Set parameters for real time path rating diagnostics

Parameters:
src_area generation area
src_zone generation zone
load_area load area
load_zone load zone
gen_scale scale factor for generation
load_scale scale factor for loads
void gridpack::powerflow::PFFactoryModule::setSBus ( void   ) 

Make SBus vector

void gridpack::powerflow::PFFactoryModule::setVoltageLimits ( double  Vmin,
double  Vmax 
)

Set voltage limits on all buses

Parameters:
Vmin lower bound on voltages
Vmax upper bound on voltages
void gridpack::powerflow::PFFactoryModule::setYBus ( void   ) 

Create the admittance (Y-Bus) matrix

void gridpack::powerflow::PFFactoryModule::updatePg ( int  busID,
std::string  genID,
double  value 
)

Update pg of specified bus element based on their genID

Parameters:
name 
busID 
genID 
value 
void gridpack::powerflow::PFFactoryModule::updateQg ( int  busID,
std::string  genID,
double  value 
)
void gridpack::powerflow::PFFactoryModule::useRateB ( bool  flag  ) 

User rate B parameter for line overload violations

Parameters:
flag if true, use RATEB parameter

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Feb 2020 for GridPACK by  doxygen 1.6.1